In accordance with capacity increase and price reduction of disk drives (hard disk drives), there have been used disk drives with low cost and large capacity such as SATA (Serial ATA) or the like in storage apparatuses such as a disk array apparatus and the like, as well. However, as compared with the conventional SAS (Serial Attached SCSI) drives, these drives with low cost and large capacity do not have sufficient reliability in many cases, and measures to improve reliability of these drives need to be taken in the case of using these drives for the storage apparatus where high reliability is required.
As a mechanism to achieve such purpose Patent Citation 1, for example, describes a technique (hereinafter referred to as a RAW (Read After Write) system) in which: a first check code based on write data is stored in a cache memory; writing of the write data with the first check code added is executed with a predetermined storage area specified; then, data stored in the storage area is read to generate a second check code; and it is determined that write data is normally stored in the storage when a correspondence between the first and second check codes is correct.
However, in the above RAW system, data is read from the disk drive whenever data writing is executed, and overhead is increased correspondingly. In the conventional write data guarantee system, detection of incorrect data on the disk drive is performed in units of blocks. Therefore, when a write command itself is lost for some reason and writing of the write command to a write target block is not performed, this incident cannot be detected.
Further, in the case where the SATA drive is attached to and used in the storage apparatus supporting the SAS drive (mixed SAS/SATA storage system), there is a need to place a sector-size conversion circuit between a control circuit, which performs writing to a disk drive, and the disk drive. However, when data is written to an unexpected address of the disk drive due to an erroneous operation of the conversion circuit, this incident cannot be detected by the conventional guarantee system.